1. Field
This invention pertains to the data storage systems, such as disk drive units, and more particularly to a method of retrying a data read operation in a data storage device when a data read error occurs, and a data storage device that performs such a method.
2. Description
There continues to be a demand to process and store an ever-increasing amount and variety of digitized information. This demand is fueled in part by the desire to store and process digitized information from sources which generate a large volume of data, such as audio and video programming material. The demand for processing these kinds of information sources in turn places new demands on the devices which are employed to process and store this data, including disk drive units.
In particular, the increasingly common practice of storing large amounts of digital audio and video data on data storage devices places new demands on these storage devices. For example, users now routinely store large digital audio and video data files onto disk drive units (including, specifically “hard disk drive” (HDD) units) whose standards were originally developed in an era before audio and video programs were routinely digitized and stored on these kinds of data storage devices.
FIG. 1 illustrates the structure of a track 100 of a data storage device, and specifically a disk drive unit. The track 100 includes servo sectors 110 and data sectors 120. In traditional disk drive units, each data sector 120 is able to store 512 bytes. Without elaborating, there are a few operating system disk setup utilities that permit this 512 byte number per sector to be modified, however 512 is the standard, and is found on virtually all disk drive units by default. Each data sector, however, actually holds much more than 512 bytes of information. Additional bytes are needed for control structures, information necessary to manage the drive, locate data, and perform other functions. The exact sector structure depends on the drive manufacturer and model; however the contents of a sector typically include the following elements: ID Information; Synchronization Fields; Payload Data; Error Correction Coding (ECC); and gaps. All of these elements—other than the payload data itself—can be considered to be overhead.
The aforementioned demand for storing larger volumes of data on these disk drive units suggests the need to increase the storage efficiency of the disk drive unit. One method of accomplishing this is to use larger data sectors so that the percentage of each data sector required for overhead is reduced. Also, as larger data files are being stored on these disk drive units, it is desirable to reduce the number of data sectors required for storing these files—which also suggests using larger data sectors.
Accordingly, these data storage demands are leading to the development of disk drive units which use a so-called “multi-sector” or “large-sector” format wherein each data sector is enlarged to the size of two or more “traditional” data sectors. In these disk drive units, each sector may store 1 kilobyte, 2 kilobytes, or even 4 kilobytes of data. For example, FIG. 1 shows one of these “new” data sectors 130 which comprises four traditional data sectors and stores 2 kilobytes of data.
Data sectors with the “multi-sector” or “large-sector” format have less overhead (and are therefore more efficient) than the traditional 512 byte data sector format, and are also better for storing large audio and video data files of several megabytes or more.
However, there are some issues raised with these larger data sectors.
FIG. 2 illustrates an exemplary data read operation for a data storage device, and specifically a disk drive unit employing a “multi-sector” or “large-sector” format. As shown in FIG. 2, a first data sector 220-1 is divided by a servo sector Servo2 210-2 so as to have a first data sector portion S1 220-1a on a first side of servo sector Servo2 210-2, and a second data sector portion S1-1220-1b on a second side of servo sector Servo2 210-2.
During the read operation illustrated in FIG. 2 on line “A”, a read head (or read/write head) 24 follows the track 100 at a “normal head position” having a 0% lateral offset with respect to the longitudinal direction of the track 100. Head 24 uses the servo information from the servo sectors 210 to follow the track 100.
As illustrated in FIG. 2 on line “B”, with head 24 at the 0% offset, data is read correctly from data sector 220-1. However, when head 24 tries to read the data of the second data sector 220-2, there is a data read error. More specifically, when the head 24 tries to read the data from data sector 220-2 with head 24 at the 0% offset, it can correctly read the data from the first data sector portion S2 220-2a on the first side of servo sector Servo3 210-3, but it cannot correctly read the data from the second data sector portion S2-1 220-2b on the second side of servo sector Servo2 210-3. Furthermore, head 24 also cannot correctly read the data from the third data sector portion S2-2 220-2c on the second side of servo sector Servo4 210-4.
Accordingly, the lateral position of head 24 is adjusted to have a “−A %” offset position and the head 24 retries reading the data sector.
With head 24 adjusted to have the −A %” offset position, as illustrated in FIG. 2 on line “C”, head 24 is able to correctly read the data from the second data sector portion S2-1 220-2b on the second side of servo sector Servo2 210-2. However, head 24 can no longer correctly read the data from the first data sector portion S2 220-2a on the first side of servo sector Servo3 210-3. Also, it still cannot correctly read the data from the third data sector portion S2-2 220-2c on the second side of servo sector Servo4 210-4.
So it is seen that when a “multi-sector” or “large-sector” data sector which is divided by a servo sector has different “off-track” amounts or percentages for the data sector portions on different sides of the servo sector, the disk drive unit cannot always solve a data read error by the method of data reading illustrated in FIG. 2. Furthermore, the problem is especially exacerbated when a data sector is split into three data sector portions that are separated by two different servo sectors with different offsets for each data portion.
Accordingly, it would be desirable to provide a new method of reading data stored in a data storage device. It would also be desirable to provide a new data storage device that performs a data read retry operation.